Skip to content

Add plugin 进程端口管理 v1.0.0#290

Merged
lzx8589561 merged 5 commits into
ZToolsCenter:mainfrom
Code-Agitator:plugin/process-manager
Jul 7, 2026
Merged

Add plugin 进程端口管理 v1.0.0#290
lzx8589561 merged 5 commits into
ZToolsCenter:mainfrom
Code-Agitator:plugin/process-manager

Conversation

@Code-Agitator

@Code-Agitator Code-Agitator commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

插件信息

  • 名称: 进程端口管理
  • 插件ID: process-manager
  • 版本: 1.0.0
  • 描述: 快速搜索进程、端口、PID、路径,支持一键 Kill 进程,支持深色模式
  • 作者: Agitator
  • 类型: 新增

本次变更

🎉 初始发布

Process Port Manager 正式发布 — 为 ZTools 打造的进程端口管理插件,支持快速搜索进程、端口、PID、路径,并一键 Kill 进程。

✨ 功能特性

  • 🔍 多维搜索 — 支持按进程名、PID、端口号、文件路径模糊搜索,一处输入全字段匹配
  • 📋 一键复制 — 点击进程名 / PID / 端口号 / 路径即可复制到剪贴板
  • ⚡ 一键 Kill 进程 — 通过右键唤出确认弹窗,确认后调用 taskkill /F 强制终止进程
  • 🔄 自动刷新 — 5 秒缓存 TTL,进度条直观展示缓存倒计时
  • 🌙 暗色模式 — 跟随系统主题自适应,UI 与 ZTools 原生风格统一
  • 🪟 Windows 原生 — 基于 wmic / netstat / tasklist,零第三方系统依赖

📄 许可

MIT License

截图 / 演示

image1 image3

自检清单

  • plugin.json 的 name / title / version / description / author 字段均已检查
  • 已移除调试日志、未使用文件、敏感信息(.env、token、密钥等)
  • 本次 PR 的 diff 仅涉及 plugins/process-manager/ 目录
  • 已在本地 ZTools 客户端实际加载并测试过此插件,主要功能正常
  • 同意以仓库声明的开源协议发布此插件

此 PR 由 ztools-plugin-cli 自动管理:每次 ztools publish 在分支上追加一个 commit,PR 链接保持不变。

- feat: process port manager plugin - search processes by PID/port/name/path, kill with one click
- chore: add plugin description
- chore: readme
- feat: 使用 react-icons 库替换文本字符图标
- style: 自定义滚动条样式匹配主窗体风格
- feat: 将 Kill 确认弹窗改为页面级别模态框
- chore: readme
- style: 将主容器背景设为全透明
- fix: 修复透明背景下的颜色协调问题
- fix: 修复 hover 高亮边距不一致问题
- fix: 确保 pm-body 占满全部宽度
- fix: 修复滚动条与背景融合问题
- fix: 仅修改滚动条颜色不改变背景
- feat: 替换 logo 为 SVG 格式,更新截图和插件配置
- docs: 在 README 中展示 logo
- docs: 添加 MIT 协议文件
- docs: 添加与常见进程管理工具的对比优势
- docs: 简化优势描述为纯要点
- feat: 移除 Kill 按钮,改为右键直接 Kill,结果提示移至顶部
- feat: 右键弹出确认弹窗后再 Kill
- feat: 顶部改为操作提示「右键可 Kill 进程」,Kill 结果用 toast
- fix: 修复 JSX 结构导致的构建报错
- fix: 缩短弹窗动画时间,消除右键弹窗延迟感
- optimize: 优化界面和文档
- optimize: 优化文档
- feat: process port manager plugin - search processes by PID/port/name/path, kill with one click
- chore: add plugin description
- chore: readme
- feat: 使用 react-icons 库替换文本字符图标
- style: 自定义滚动条样式匹配主窗体风格
- feat: 将 Kill 确认弹窗改为页面级别模态框
- chore: readme
- style: 将主容器背景设为全透明
- fix: 修复透明背景下的颜色协调问题
- fix: 修复 hover 高亮边距不一致问题
- fix: 确保 pm-body 占满全部宽度
- fix: 修复滚动条与背景融合问题
- fix: 仅修改滚动条颜色不改变背景
- feat: 替换 logo 为 SVG 格式,更新截图和插件配置
- docs: 在 README 中展示 logo
- docs: 添加 MIT 协议文件
- docs: 添加与常见进程管理工具的对比优势
- docs: 简化优势描述为纯要点
- feat: 移除 Kill 按钮,改为右键直接 Kill,结果提示移至顶部
- feat: 右键弹出确认弹窗后再 Kill
- feat: 顶部改为操作提示「右键可 Kill 进程」,Kill 结果用 toast
- fix: 修复 JSX 结构导致的构建报错
- fix: 缩短弹窗动画时间,消除右键弹窗延迟感
- optimize: 优化界面和文档
- optimize: 优化文档
- chore: 填充作者信息
- optimize: 优化命令注入安全问题
- docs: CHANGELOG.md
@Code-Agitator Code-Agitator marked this pull request as ready for review July 7, 2026 03:49

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a new "Process Port Manager" plugin for ZTools, featuring a React-based UI and a Node.js preload service to search, list, and terminate Windows processes. The code review highlights several critical improvements: handling Windows carriage returns (\r) during command output parsing to prevent malformed strings, fixing a sorting bug in the search engine where relevance scores are unintentionally overridden, adding a force-refresh capability to bypass the 5-second cache TTL for manual refreshes, and disabling modal buttons during process termination to prevent duplicate actions.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread plugins/process-manager/public/preload/services.js
Comment thread plugins/process-manager/src/ProcessManager/search.ts
Comment thread plugins/process-manager/public/preload/services.js Outdated
Comment thread plugins/process-manager/src/ProcessManager/useProcessData.ts Outdated
Comment thread plugins/process-manager/src/ProcessManager/index.tsx Outdated
- feat: process port manager plugin - search processes by PID/port/name/path, kill with one click
- chore: add plugin description
- chore: readme
- feat: 使用 react-icons 库替换文本字符图标
- style: 自定义滚动条样式匹配主窗体风格
- feat: 将 Kill 确认弹窗改为页面级别模态框
- chore: readme
- style: 将主容器背景设为全透明
- fix: 修复透明背景下的颜色协调问题
- fix: 修复 hover 高亮边距不一致问题
- fix: 确保 pm-body 占满全部宽度
- fix: 修复滚动条与背景融合问题
- fix: 仅修改滚动条颜色不改变背景
- feat: 替换 logo 为 SVG 格式,更新截图和插件配置
- docs: 在 README 中展示 logo
- docs: 添加 MIT 协议文件
- docs: 添加与常见进程管理工具的对比优势
- docs: 简化优势描述为纯要点
- feat: 移除 Kill 按钮,改为右键直接 Kill,结果提示移至顶部
- feat: 右键弹出确认弹窗后再 Kill
- feat: 顶部改为操作提示「右键可 Kill 进程」,Kill 结果用 toast
- fix: 修复 JSX 结构导致的构建报错
- fix: 缩短弹窗动画时间,消除右键弹窗延迟感
- optimize: 优化界面和文档
- optimize: 优化文档
- chore: 填充作者信息
- optimize: 优化命令注入安全问题
- docs: CHANGELOG.md
- optimize: improve process management UX and search sorting
- feat: process port manager plugin - search processes by PID/port/name/path, kill with one click
- chore: add plugin description
- chore: readme
- feat: 使用 react-icons 库替换文本字符图标
- style: 自定义滚动条样式匹配主窗体风格
- feat: 将 Kill 确认弹窗改为页面级别模态框
- chore: readme
- style: 将主容器背景设为全透明
- fix: 修复透明背景下的颜色协调问题
- fix: 修复 hover 高亮边距不一致问题
- fix: 确保 pm-body 占满全部宽度
- fix: 修复滚动条与背景融合问题
- fix: 仅修改滚动条颜色不改变背景
- feat: 替换 logo 为 SVG 格式,更新截图和插件配置
- docs: 在 README 中展示 logo
- docs: 添加 MIT 协议文件
- docs: 添加与常见进程管理工具的对比优势
- docs: 简化优势描述为纯要点
- feat: 移除 Kill 按钮,改为右键直接 Kill,结果提示移至顶部
- feat: 右键弹出确认弹窗后再 Kill
- feat: 顶部改为操作提示「右键可 Kill 进程」,Kill 结果用 toast
- fix: 修复 JSX 结构导致的构建报错
- fix: 缩短弹窗动画时间,消除右键弹窗延迟感
- optimize: 优化界面和文档
- optimize: 优化文档
- chore: 填充作者信息
- optimize: 优化命令注入安全问题
- docs: CHANGELOG.md
- optimize: improve process management UX and search sorting
- fix: 搜索逻辑改为字符串模糊匹配,支持 PID/端口部分匹配
@lzx8589561

Copy link
Copy Markdown
Contributor

构建报错,应该是需要本地先执行pnpm i,执行完之后再推送一下

- feat: process port manager plugin - search processes by PID/port/name/path, kill with one click
- chore: add plugin description
- chore: readme
- feat: 使用 react-icons 库替换文本字符图标
- style: 自定义滚动条样式匹配主窗体风格
- feat: 将 Kill 确认弹窗改为页面级别模态框
- chore: readme
- style: 将主容器背景设为全透明
- fix: 修复透明背景下的颜色协调问题
- fix: 修复 hover 高亮边距不一致问题
- fix: 确保 pm-body 占满全部宽度
- fix: 修复滚动条与背景融合问题
- fix: 仅修改滚动条颜色不改变背景
- feat: 替换 logo 为 SVG 格式,更新截图和插件配置
- docs: 在 README 中展示 logo
- docs: 添加 MIT 协议文件
- docs: 添加与常见进程管理工具的对比优势
- docs: 简化优势描述为纯要点
- feat: 移除 Kill 按钮,改为右键直接 Kill,结果提示移至顶部
- feat: 右键弹出确认弹窗后再 Kill
- feat: 顶部改为操作提示「右键可 Kill 进程」,Kill 结果用 toast
- fix: 修复 JSX 结构导致的构建报错
- fix: 缩短弹窗动画时间,消除右键弹窗延迟感
- optimize: 优化界面和文档
- optimize: 优化文档
- chore: 填充作者信息
- optimize: 优化命令注入安全问题
- docs: CHANGELOG.md
- optimize: improve process management UX and search sorting
- fix: 搜索逻辑改为字符串模糊匹配,支持 PID/端口部分匹配
- ci: add release workflow
- ci: add tag input for workflow_dispatch
- ci: read version from package.json
- ci: fix quote nesting for node -p
- fix: pnpm run build fail
@lzx8589561 lzx8589561 merged commit acc8bf0 into ZToolsCenter:main Jul 7, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants